Быстрый ШИМ

Сделаем ШИМ сигнал на быстрых выходах.

Особенностью PRU программ является то, что нет возможности вызвать TIME() и узнать «текущее время». С другой стороны, сами PRU программы крайне предсказуемы. PRU ядро не занимается никакой «лишней» работой как то «обработка TCP». Поэтому можно считать, что цикл выполняется ровно указанную длительность.

Если у вас открыта среда Hardella IDE, то можете либо открыть код примера в среде, либо создать свой проект на основе примера (File > New > Project > Fast counter).

Если использовать ШИМ блок из стандартной библиотеки, то всё довольно просто:

Программа ШИМ

Здесь длина периода ШИМ (period) и скважность (value) поступают из основного цилка ПЛК.

В блоке ШИМ высокой науки нет: ведём учёт количества вызовов и выставляем выходное значение Q в зависимости от скважности.

Исходный код блока ШИМ

Обновлено:

Комментировать